package br.jus.tjpe.negocio;

import java.util.List;

import br.jus.tjpe.dao.TipoParteDao;
import br.jus.tjpe.dominio.TipoParte;

public class TipoParteServico {

	private static TipoParteServico instancia;

	private TipoParteDao tipoParteDao;

	private TipoParteServico() {
		this.tipoParteDao = new TipoParteDao();
		gerarDados();
	}

	private void gerarDados() {
		if (this.consultarTiposParte().isEmpty()) {
			TipoParte tipoParteAutor = new TipoParte();
			tipoParteAutor.setDescricao("Autor");

			TipoParte tipoParteAdvogado = new TipoParte();
			tipoParteAdvogado.setDescricao("Advogado");

			TipoParte tipoParteReu = new TipoParte();
			tipoParteReu.setDescricao("Réu");

			this.salvar(tipoParteAutor);
			this.salvar(tipoParteAdvogado);
			this.salvar(tipoParteReu);
		}
	}

	public static TipoParteServico getInstance() {
		if (instancia == null) {
			instancia = new TipoParteServico();
		}

		return instancia;
	}

	public List<TipoParte> consultarTiposParte() {
		return this.tipoParteDao.buscarTodos();
	}

	public void salvar(TipoParte tipoParte) {
		if (tipoParte.getId() == null) {
			this.tipoParteDao.inserir(tipoParte);
		} else {
			this.tipoParteDao.editar(tipoParte);
		}
	}

}
